STOSW Запись в строку из слов

Флаги не меняются.

Команда:

STOSW

Логика

(ES:DI) = AX
                     if DF = 0
                         DI = DI + 2
                     else
                         DI = DI - 2

Команда STOSW копирует слово, расположенное в AX, в место памяти, на которое указывает ES:DI, а также инкрементирует или декрементирует DI (в зависимости от состояния признака направления DF), чтобы подготовиться к копированию AX в следующее слово памяти.

Операнды Такт байты (слова)ОбращенияБайтыПример
нет операндов1511STOSW
(повтор)9+14/rep1/rep1REP STOSW

Пример.
Если команду записи в строку использовать в сочетании с префиксом REP, то такая команда будет полезна для инициализации блока памяти; следующий пример иллюстрирует инициализацию стобайтового блока памяти, расположенного по адресу BUFFER, в 0 :

MOV  AL,0      			;значение,которое присваиваем
                             		;при инициализации
              LEA  DI,BUFFER 		;загружаем стартовый адрес блока памяти
              MOV  CX,50     		;размер блока памяти (в словах)
              CLD            		;будем двигаться в прямом направлении
         REP  STOSW          		;сравните эту строку с ПРИМЕРом для STOS
Hosted by uCoz